/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.geaSV.busquedas;

import com.geaSV.conexiones.conectarBD;
import com.geaSV.entities.PersonaE;
import com.geaSV.entities.usuarioE;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author vash
 */
public class busquedaUsuario {
    private Connection conx = null;
    private Statement sttm;
    private ResultSet rs;
    
    public usuarioE buscarDatosUsuario(String nombre, String password) throws SQLException{
    // esto es instansiar el objeto     
    usuarioE U = new usuarioE();
    try{
        System.out.println("esto es: " +nombre);
        conx = conectarBD.conectar();
        sttm = conx.createStatement();
        rs = sttm.executeQuery("SELECT id,nombre,nivel_acceso,id_persona FROM usuario WHERE nombre = '"+nombre+"' and "
                + "AES_DECRYPT(contrasena,'ufg')='"+password+"' and estado =1");
        while(rs.next()){
            U.setId(rs.getInt("id"));   
            U.setNombre(rs.getString("nombre"));
            U.setNivel_acceso(rs.getInt("nivel_acceso"));
            U.setId_persona(rs.getInt("id_persona"));
        }
        
    }catch(Exception e){

        System.out.println("esto paso"+e.getMessage());
      
    }finally{
        rs.close();
        sttm.close();
        conx.close();
        return U; 
    }
    }
    public String buscarDatosUsuario(String nombre) throws SQLException{
    // esto es instansiar el objeto
        String pass=null;
    try{
        conx = conectarBD.conectar();
        sttm = conx.createStatement();
        rs = sttm.executeQuery("SELECT contrasena FROM usuario WHERE nombre = '"+nombre+"' and "
                + "estado =1");
        while(rs.next()){
            pass=rs.getString("contrasena");
        }
        
    }catch(Exception e){

        System.out.println("esto paso"+e.getMessage());
      
    }finally{
        rs.close();
        sttm.close();
        conx.close();
        return pass; 
    }
    }
    
    public String buscarEmail2(String nomUs) throws SQLException{
String email="";
  conx= conectarBD.conectar();
 sttm= conx.createStatement();
try{     
         
           rs = sttm.executeQuery("SELECT email FROM persona WHERE id="
                   + "(select id_persona from usuario WHERE nombre='"+nomUs+"')");
         while(rs.next()){
          if(rs.getString("email")!=null){
          email=rs.getString("email");
             
          }else{email="";}
         } 
                 
         } catch(Exception e){
             email="error al cargar email";
         System.out.println(e.getMessage());
         }finally{ 
              sttm.close();
              conx.close();
    return email;}
 }
    public int buscarEmail(String correo){
int x=0;
try{     
           conx= conectarBD.conectar();
           sttm= conx.createStatement();
           rs = sttm.executeQuery("SELECT email FROM persona WHERE email='"+correo+"'");
         while(rs.next()){
          if(rs.getString("email")!=null){
          x=1;
          }else{x=0;}
         } 
          sttm.close();
          conx.close();
                 
         } catch(Exception e){
             x=2;
         System.out.println(e.getMessage());
         }finally{ return x;}
 }
    
    
    public List<PersonaE> buscarDatosUsuario() throws SQLException{
        List<PersonaE> lstp= new ArrayList<PersonaE> (0);
    try{
        conx = conectarBD.conectar();
        sttm = conx.createStatement();
        rs = sttm.executeQuery("SELECT p.id, concat_ws(\" \",p.nombre1,p.nombre2,p.apellido1,p.apellido2) as empleado"
                + " FROM GEA_SV.persona p WHERE p.id=(SELECT u.id FROM GEA_SV.usuario u WHERE p.id=u.id_persona "
                + "and u.id_tipo_usuario=2)");
        while(rs.next()){
            PersonaE p= new PersonaE();
            p.setNombre1(rs.getString("empleado"));
            p.setId(rs.getInt("id"));
            lstp.add(p);
        }
        
    }catch(Exception e){

        System.out.println("esto paso"+e.getMessage());
      
    }finally{
        rs.close();
        sttm.close();
        conx.close();
        return lstp; 
    }
    }
    
}
